-
Notifications
You must be signed in to change notification settings - Fork 2
chore: Husky 및 commitlint 설정 추가, CI 워크플로우 병렬화 #330
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
chore: Husky 및 commitlint 설정 추가, CI 워크플로우 병렬화 #330
Conversation
- Husky 설치 및 초기화 - commitlint로 커밋 메시지 검증 추가 (feat, fix, refactor, style, test, docs, chore) - pre-push 훅 제거 (CI에서 빌드 체크) - lint-staged 제거 - CI 워크플로우를 lint와 build로 병렬 실행하도록 분리
|
Warning Rate limit exceeded@manNomi has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 23 minutes and 50 seconds before requesting another review. ⌛ How to resolve this issue?After the wait time has elapsed, a review can be triggered using the We recommend that you space out your commits to avoid hitting the rate limit. 🚦 How do rate limits work?CodeRabbit enforces hourly rate limits for each developer per organization. Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout. Please see our FAQ for further information. ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
Walkthrough
Estimated code review effort🎯 2 (Simple) | ⏱️ ~12 분 Suggested reviewers
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Nitpick comments (1)
.husky/pre-commit (1)
1-1: pre-commit 훅의 목적을 명확히 해주세요.현재 pre-commit 훅은 주석만 포함하고 있어 실제로 아무 작업도 수행하지 않습니다. 일반적으로 빈 훅 파일은 필요하지 않으며, Husky가 설치된 경우 .husky 디렉토리에 실제로 사용되는 훅만 유지하는 것이 좋습니다.
다음 중 하나를 고려해주세요:
- 이 파일을 삭제하고 commit-msg 훅만 유지
- 실제로 pre-commit 단계에서 수행할 작업(예: lint-staged 실행)이 있다면 해당 명령어 추가
📜 Review details
Configuration used: Repository UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
package-lock.jsonis excluded by!**/package-lock.json
📒 Files selected for processing (5)
.github/workflows/ci.yml.husky/commit-msg.husky/pre-commitcommitlint.config.jspackage.json
🧰 Additional context used
🧠 Learnings (1)
📓 Common learnings
Learnt from: manNomi
Repo: solid-connection/solid-connect-web PR: 242
File: src/components/ui/TabSelector.tsx:10-11
Timestamp: 2025-08-12T09:41:44.182Z
Learning: manNomi prefers to keep reusable UI components simple and focused on core functionality rather than adding many features. They don't want to over-engineer flexible/reusable UI components at the initial stage.
Learnt from: manNomi
Repo: solid-connection/solid-connect-web PR: 245
File: src/components/mentor/MentorChatCard/index.tsx:17-21
Timestamp: 2025-08-24T11:14:34.297Z
Learning: manNomi prefers not to receive accessibility suggestions or recommendations during code reviews.
Learnt from: manNomi
Repo: solid-connection/solid-connect-web PR: 245
File: src/api/auth/client/usePostLogout.ts:17-33
Timestamp: 2025-08-24T11:13:08.477Z
Learning: manNomi prefers to prioritize user experience over perfect state consistency in auth flows. Specifically, in logout scenarios, they prefer to keep tokens intact on API failure to avoid forcing users to re-login, even if it means temporary UI state inconsistency.
Learnt from: manNomi
Repo: solid-connection/solid-connect-web PR: 245
File: src/api/auth/client/useDeleteUserAccount.ts:17-27
Timestamp: 2025-08-24T11:11:40.758Z
Learning: manNomi prefers optimistic navigation in auth-related flows (like account deletion) to prevent race conditions where token clearing before navigation could cause intermediate redirects to login page due to pending async requests failing.
Learnt from: manNomi
Repo: solid-connection/solid-connect-web PR: 242
File: src/types/mentor.ts:70-73
Timestamp: 2025-08-12T04:07:04.134Z
Learning: manNomi prefers using Korean labels directly in enum values (e.g., MentorTab.MY_MENTEE = "나의 멘티") over separating enum keys from UI labels for efficiency and intuitiveness, considering scalability concerns as excessive for their current project needs.
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (2)
- GitHub Check: lint
- GitHub Check: build
🔇 Additional comments (5)
package.json (2)
13-13: prepare 스크립트가 올바르게 추가되었습니다.Husky를 자동으로 초기화하는 prepare 스크립트가 적절하게 설정되었습니다.
50-51: commitlint 패키지 버전 확인 완료 - 최신 버전입니다.검증 결과, 다음 사항을 확인했습니다:
버전 상태
@commitlint/cli: 최신 버전 20.2.0 ✓@commitlint/config-conventional: 최신 버전 20.2.0 ✓보안 취약점
- 두 패키지 모두 알려진 보안 취약점 없음 ✓
- Snyk 및 공개 취약점 데이터베이스에서 확인 완료
현재 package.json의 버전 설정이 올바르므로 추가 조치는 필요하지 않습니다.
.husky/commit-msg (1)
1-2: commit-msg 훅이 올바르게 구성되었습니다.commitlint를 실행하는 표준 명령어가 적절하게 설정되어 있습니다.
--no플래그는 패키지 설치 프롬프트를 방지하고,${1}은 커밋 메시지 파일 경로를 올바르게 전달합니다..github/workflows/ci.yml (1)
1-50: CI 워크플로우가 효율적으로 구성되었습니다.lint와 build 작업이 병렬로 실행되도록 설정되어 있어 CI 실행 시간이 최적화됩니다. 각 작업이 다음을 포함하고 있습니다:
- lint 작업: ESLint 검사 및 TypeScript 타입 체크
- build 작업: 프로덕션 환경 빌드
Node.js 22.x 설정과 npm 캐시 활용도 적절합니다.
commitlint.config.js (1)
1-11: commitlint 설정이 올바르게 구성되었습니다.conventional commits 규칙을 기반으로 하며, PR 목표에 명시된 대로 허용된 커밋 타입이 적절히 제한되어 있습니다:
- feat, fix, refactor, style, test, docs, chore
severity level 2(error)로 설정되어 있어 규칙 위반 시 커밋이 차단됩니다.
- Remove critters (handled internally by Next.js) - Remove firebase (code was commented out) - Remove js-cookie (unused) - Remove @types/js-cookie (js-cookie removed)
- 사용하지 않는 lint-staged 패키지 제거 - package.json 및 package-lock.json 업데이트
관련 이슈
작업 내용
특이 사항
리뷰 요구사항 (선택)